#!/sbin/openrc-run

description="strongSwan charon IKE daemon"
command="/usr/lib/strongswan/charon"
pidfile="/var/run/charon.pid"
start_stop_daemon_args="--background"
extra_started_commands="reload fullstatus"

depend() {
	need net
	after firewall
	provide ipsec
}

start_post() {
	ebegin "Loading ${name:-$RC_SVCNAME} configuration"
	while [ ! -e $pidfile ]; do
		sleep 0.1
	done
	swanctl --load-all &>/dev/null
	eend $?
}

reload() {
	swanctl --reload-settings
	swanctl --load-all
}

fullstatus() {
	swanctl --list-conns
	swanctl --list-sas
}
